package com.tanhua.dubbo.api.mongo;

import com.tanhua.domain.mongo.RecommendUser;
import com.tanhua.domain.vo.PageResult;

/**
 * 我的喜欢、粉丝服务接口
 */
public interface UserLikeApi {
    /**
     * 我的喜欢数量userId=xxx 查询likeUserId数量
     * @param userId
     * @return
     */
    Long countByUserId(Long userId);

    /**
     * 我的喜欢数量likeUserId=xxx 查询userId数量
     * @param userId
     * @return
     */
    Long countByLikeUserId(Long userId);

    /**
     * 互相喜欢分页查询
     * @param userId
     * @param page
     * @param pagesize
     * @return
     */
    PageResult<RecommendUser> findPageLikeEachOther(Long userId, int page, int pagesize);

    /**
     * 我关注分页查询
     * @param userId
     * @param page
     * @param pagesize
     * @return
     */
    PageResult<RecommendUser> findPageOneSideLike(Long userId, int page, int pagesize);

    /**
     * 粉丝分页查询
     * @param userId
     * @param page
     * @param pagesize
     * @return
     */
    PageResult<RecommendUser> findPageFens(Long userId, int page, int pagesize);

    /**
     * 谁看过我分页查询
     * @param userId
     * @param page
     * @param pagesize
     * @return
     */
    PageResult<RecommendUser> findPageMyVisitors(Long userId, int page, int pagesize);

    /**
     * 根据当前用户id 与 好友id 删除UserLike中 粉丝-喜欢记录
     * @param userId
     * @param friendId
     */
    void deleteById(Long userId, Long friendId);
}
